package oop.controller.action.history;

import java.util.List;

import oop.controller.action.DefaultAction;
import oop.data.History;
import oop.data.User;
import oop.db.dao.HistoryDAO;

import org.apache.commons.lang.StringUtils;

public class ListAction extends DefaultAction {

	public static final int PAGE_LENGTH = 30;

	@Override
	public void perform() throws Exception {
		if (!isUserLogedIn()) {
			request.setAttribute("message", "Bạn cần phải đăng nhập để sử dụng chức năng này.");
			setNextAction("error");
			return;
		}
		
		String pageStr = StringUtils.defaultIfEmpty(request
				.getParameter("page"), "1");
		int page = Integer.parseInt(pageStr);

		User user = (User) request.getSession().getAttribute("user");
		List<History> histories = HistoryDAO.fetchByUser(user.getId(), (page - 1)
				* PAGE_LENGTH, PAGE_LENGTH);
		int count = HistoryDAO.countByUser(user.getId());
		
		request.setAttribute("histories", histories);
		request.setAttribute("page", page);
		request.setAttribute("pageCount", count / PAGE_LENGTH);
	}

}
